In particular for real-time requirements for which it is required that the result is correct and the result is obtained within a predetermined time, memory management may be of a particular concern.
In particular, the real-time application may comprise measuring a physical quantity, such as a wind speed, a temperature, a vibration, an amount of electric power, an electric voltage, an electric current or the like. In particular, the real-time application may run to control and/or monitor a power plant, such as a power generation system, in particular a wind turbine system. In particular, the wind turbine may be required to be controlled depending on one or more measuring data measuring physical quantities, such as the wind speed, the temperature, the amount of electric energy produced, a frequency of a utility grid connected to the wind turbine and the like.
Herein, it may be required that access to and/or allocation of a requested memory portion is gained or granted within a predetermined time, to ensure that the result is obtained within the predetermined time of the real-time system or application. In particular, the application may access or allocate a portion of the heap, which may be a memory area reserved for dynamic memory allocation and memory de-allocation.
According to a heap management system, part of an operating system which is offered by the company QNX Software Systems (http://www.qnx.com/download/feature.html?programid=19524) the physical memory of the heap is split in 4 kbyte sized memory portions. The physical memory is mapped to a virtual memory, wherein every operation, process or application may allocate or access the virtual memory. The virtual memory may simulate a continuous section of a memory which however may be mapped to a large number of 4 kbyte memory (separated) portions in the physical memory, which may be distributed across the physical memory, such that they may be interspersed with not allocated memory portions. For every access to the memory a mapping from the virtual memory to the physical memory needs to be performed which slows the operation down.
There may be a need for a method for managing physical memory of a data storage, in particular a heap, and for a data storage management system, wherein allocating and/or de-allocating and/or accessing a memory portion may be improved, in particular more efficient compared to conventionally known methods or systems. In particular, there may be a need for a method for managing physical memory of a data storage, in particular a heap, and for a data storage management system, in particular comprising a heap, wherein allocation and/or access of a memory portion may be performed in a predictable time span.